﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace  RzCorportativo.Views.Consulta
{
    public partial class Especialidade : BasePage
    {
        private object DataSource
        {
            get { return this.Session["$Especialidade$DataSource"]; }
            set { this.Session["$Especialidade$DataSource"] = value; }
        }

        protected void Page_Load(object sender, EventArgs e)
        {
            if("s".Equals(Session["op"])){
                Session.Remove("op");
                Alert alert = new Alert("erroGeral", this);
                alert.AlertType = AlertType.Success;
                alert.Add("sucesso", "Item salvo com sucesso!");
                alert.Show();
            }
            this.ListaEspecialidades.SetSystemPageSize();
            if (this.IsPostBack)
                return;
            var lista = RzCorportativo.Lib.Especialidade.Listar(new RzCorportativo.Lib.Especialidade());
            this.ListaEspecialidades.DataSource = this.DataSource = lista;
            this.ListaEspecialidades.DataBind();
        }

        protected void ListaMedicos_RowDeleting(object sender, GridViewDeleteEventArgs e)
        {

        }

        protected void ListaMedicos_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
        {
            var lista = this.DataSource as List<RzCorportativo.Lib.Especialidade>;
            if (lista == null)
                return;
            var item = lista[(this.ListaEspecialidades.PageSize * this.ListaEspecialidades.PageIndex) + e.NewSelectedIndex];
            if (item == null)
                return;
            this.Response.Redirect(EFramework.Web.UrlBase.UrlPadrao + "Views/Cadastros/Especialidade.aspx?especialidade=" + item.EspecialidadeId);
        }

        protected void buscar_Click(object sender, EventArgs e)
        {
            RzCorportativo.Lib.Especialidade especialidade = new RzCorportativo.Lib.Especialidade();
            especialidade.Descricao = this.Descricao.Text;
            this.ListaEspecialidades.DataSource = this.DataSource = RzCorportativo.Lib.Especialidade.Listar(especialidade);
            this.ListaEspecialidades.DataBind();

        }

        protected void ListaMedicos_PageIndexChanging(object sender, GridViewPageEventArgs e)
        {
            DataSource = DataSource == null ? RzCorportativo.Lib.Especialidade.Listar(new RzCorportativo.Lib.Especialidade()) : DataSource;
            this.ListaEspecialidades.SetPage(e.NewPageIndex, DataSource);
        }
    }
}